package top.waikin.aspect.annonation;

import top.waikin.aspect.aspect.CacheAspect;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.PARAMETER;

/**
 * 缓存key注解
 *
 * @author WaiKin
 * @date 2022/11/27
 * @see CacheAspect
 */
@Target(PARAMETER)
@Retention(RetentionPolicy.RUNTIME)
public @interface Key {
  /**
   * 字段名称 如果为空则使用参数名称
   *
   * @return {@code String}
   */
  String fieldName() default "";
}
